package com.bsoft.gol.hcs.clinical.bean.req;


import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.io.Serializable;

/**
 * @Author:FangZhiyi
 * @Description
 * @Data Created in 2020/1/17 17:12
 * @Moddified By:
 */
public class NavigationSettingReq implements Serializable {
    private Long id;//主键

    @NotEmpty(message = "医生CODE不能为空", groups = {addOrUpdate.class,query.class,queryList.class })
    private String hospitalCode;//医院代码

    @NotEmpty(message = "模块ID不能为空", groups = {addOrUpdate.class ,query.class})
    private String moduleCode;//模块ID

    @NotEmpty(message = "模块名称不能为空", groups = {addOrUpdate.class })
    private String moduleName;//模块名称

    @NotNull(message = "引导CODE不能为空", groups = {addOrUpdate.class})
    private Integer guideCode;//引导CODE

    @NotEmpty(message = "引导名称不能为空", groups = {addOrUpdate.class })
    private String guideName;//引导名称

    @NotNull(message = "匹配方式不能为空", groups = {addOrUpdate.class })
    private Byte matchingType;//匹配方式

    @NotNull(message = "匹配参数不能为空", groups = {addOrUpdate.class })
    private Byte matchingParameter;//匹配参数

    @NotEmpty(message = "匹配参数值不能为空", groups = {addOrUpdate.class })
    private String parameterValue;//匹配参数值


    private Byte moduleStatus;//开启状态

    private int pageNo=1;
    private int pageSize=10;
    private int startRow=0;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getHospitalCode() {
        return hospitalCode;
    }

    public void setHospitalCode(String hospitalCode) {
        this.hospitalCode = hospitalCode;
    }

    public String getModuleCode() {
        return moduleCode;
    }

    public void setModuleCode(String moduleCode) {
        this.moduleCode = moduleCode;
    }

    public String getModuleName() {
        return moduleName;
    }

    public void setModuleName(String moduleName) {
        this.moduleName = moduleName;
    }

    public Integer getGuideCode() {
        return guideCode;
    }

    public void setGuideCode(Integer guideCode) {
        this.guideCode = guideCode;
    }

    public String getGuideName() {
        return guideName;
    }

    public void setGuideName(String guideName) {
        this.guideName = guideName;
    }

    public Byte getMatchingType() {
        return matchingType;
    }

    public void setMatchingType(Byte matchingType) {
        this.matchingType = matchingType;
    }

    public Byte getMatchingParameter() {
        return matchingParameter;
    }

    public void setMatchingParameter(Byte matchingParameter) {
        this.matchingParameter = matchingParameter;
    }

    public String getParameterValue() {
        return parameterValue;
    }

    public void setParameterValue(String parameterValue) {
        this.parameterValue = parameterValue;
    }

    public Byte getModuleStatus() {
        return moduleStatus;
    }

    public void setModuleStatus(Byte moduleStatus) {
        this.moduleStatus = moduleStatus;
    }

    public int getPageNo() {
        return pageNo;
    }

    public void setPageNo(int pageNo) {
        this.pageNo = pageNo;
    }

    public int getPageSize() {
        return pageSize;
    }

    public void setPageSize(int pageSize) {
        this.pageSize = pageSize;
    }

    public int getStartRow() {
        return startRow;
    }

    public void setStartRow(int startRow) {
        this.startRow = startRow;
    }

    @Override
    public String toString() {
        return "{\"NavigationSettingReq\":{"
                + "\"id\":"
                + id
                + ",\"hospitalCode\":\""
                + hospitalCode + '\"'
                + ",\"moduleCode\":\""
                + moduleCode + '\"'
                + ",\"moduleName\":\""
                + moduleName + '\"'
                + ",\"guideCode\":"
                + guideCode
                + ",\"guideName\":\""
                + guideName + '\"'
                + ",\"matchingType\":"
                + matchingType
                + ",\"matchingParameter\":"
                + matchingParameter
                + ",\"parameterValue\":\""
                + parameterValue + '\"'
                + ",\"moduleStatus\":"
                + moduleStatus
                + ",\"pageNo\":"
                + pageNo
                + ",\"pageSize\":"
                + pageSize
                + ",\"startRow\":"
                + startRow
                + "}}";

    }

    public interface addOrUpdate {}
    public interface query {}
    public interface queryList {}
}
